package pta06;
import java.util.Scanner;
class ArrayUtils{
	public static double findMax(double[] arr,int begin,int end) throws IllegalArgumentException{
		if(begin>=end){
			throw new IllegalArgumentException("begin:"+begin+" >= end:"+end);
		}
		else if(begin<0){
			throw new IllegalArgumentException("begin:"+begin+" < 0");
		}
		else if(end>arr.length){
			throw new IllegalArgumentException("end:"+end+" > arr.length");
		}
		double max=arr[begin];
		for (int i = begin; i < end; i++) {
			if(max<arr[i]){
				max=arr[i];
			}
		}
		return max;
	}
}
public class pta653 {

	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
		int n=in.nextInt();
		double[] arr=new double[n];
		for (int i = 0; i < arr.length; i++) {
			arr[i]=in.nextInt();
		}
		while(in.hasNext()){
			try{
				int begin=Integer.parseInt(in.next());
				int end=Integer.parseInt(in.next());
				System.out.println(ArrayUtils.findMax(arr, begin, end));
			}catch(NumberFormatException e){
				break;
			}catch(IllegalArgumentException e){
				System.out.println(e);
			}
		}
		try{
			System.out.println(ArrayUtils.class.getDeclaredMethod("findMax", double[].class,int.class,int.class));
		}catch(Exception e1){
		}
	in.close();
	}
}
